package com.software.levelupserver.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import java.io.Serializable;

@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class User implements Serializable {
    private Integer userId;
    private String username;
    private String password;
    private String email;
    private int gradeId;
    private Double experience;
    private String avatar;
    private String signature;
    private String sex;
    private String loginTime;

    private Boolean enabled;
    private Boolean accountNoExpired;
    private Boolean credentialsNoExpired;
    private Boolean accountNoLocked;

    public User(Integer userId, String username, String avatar, String email) {
        this.userId = userId;
        this.username = username;
        this.avatar = avatar;
        this.email = email;
    }

    public User(Integer userId, String username, String email, int gradeId, String avatar, String signature, String sex) {
        this.userId = userId;
        this.username = username;
        this.email = email;
        this.gradeId = gradeId;
        this.avatar = avatar;
        this.signature = signature;
        this.sex = sex;
    }

    public User(Integer userId, String username, String email, int gradeId, Double experience, String avatar, String signature, String sex, String loginTime) {
        this.userId = userId;
        this.username = username;
        this.email = email;
        this.gradeId = gradeId;
        this.experience = experience;
        this.avatar = avatar;
        this.signature = signature;
        this.sex = sex;
        this.loginTime = loginTime;
    }
}
